package com.pizzashop.abs.factory;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

import com.pizzashop.abs.ingredient.Cheese;
import com.pizzashop.abs.ingredient.Clams;
import com.pizzashop.abs.ingredient.Dough;
import com.pizzashop.abs.ingredient.Pepperoni;
import com.pizzashop.abs.ingredient.Sauce;
import com.pizzashop.abs.ingredient.Veggies;

public abstract class Pizza {
	
	String name;
	Dough dough;
	Sauce sauce;
	Veggies veggies[];
	Cheese cheese;
	Pepperoni pepperoni;
	Clams clam;
	
	List<String> toppings = new ArrayList<>();
	
	public abstract void prepare();
	
	public void bake() {
		System.out.println("Bake for 25 minutes at 350");
	}
	public void cut() {
		System.out.println("Cutting the pizza into diagonal slices");
	}
	public void box() {
		System.out.println("Place pizza in official PizzaStore box");
	}
	
	public String getName() {
		return name;
	}
	
	public void setName(String name) {
		this.name = name;
	}

	@Override
	public String toString() {
		return "Pizza [name=" + name + ", dough=" + dough + ", sauce=" + sauce
				+ ", veggies=" + Arrays.toString(veggies) + ", cheese="
				+ cheese + ", pepperoni=" + pepperoni + ", clam=" + clam
				+ ", toppings=" + toppings + "]";
	}
	
	

}
